For the purpose of efficiently storing or transmitting a digital image, the image is required to be coded in a compression coding manner. As a method for coding a digital image in a compression coding manner, there is a waveform coding method of sub-band coding, wavelet coding, fractal coding or the like other than discrete cosine transform (referred to as a DCT transform hereinafter) represented by JPEG (Joint Photographic Experts Group) and MPEG (Motion Picture Experts Group). For the purpose of removing a redundant signal between images, an inter-image prediction with a motion compensation is executed, thereby subjecting a differential signal to waveform coding.
According to the MPEG system, an input image is processed while being divided into a plurality of 16.times.16 macro blocks. One macro block is further divided into 8.times.8 blocks and quantized after undergoing 8.times.8 DCT transform. This is called an intra-frame coding.
On the other hand, according to a motion detection method inclusive of block matching, a prediction macro block having the minimum error with respect to the objective macro block is detected from other frames adjacent in time, the detected prediction macro block is subtracted from the objective macro block thereby forming a differential macro block, and this macro block is quantized after undergoing 8.times.8 DCT transform. This is called an inter-frame coding, and the prediction macro block is called a prediction signal of the time domain. According to MPEG described above, no image is predicted from an identical frame.
A normal image has spatially similar regions, and an image can be approximated to a spatial region by utilizing this characteristic. In a manner similar to that of the prediction signal of the time region, a prediction signal can also be obtained from an identical frame. This is called a prediction signal of the spatial region.
Since spatially adjacent two pixel values are close to each other, the prediction signal of the spatial region is generally located close to the objective signal. On the other hand, on the receiving side or the reproducing side, a signal which has been coded and reproduced in the past is required to be used for the prediction signal since the original image is absent. From these two factors, the prediction signal of the spatial region is required to be generated at high speed. This is because the signal is used for the generation of a prediction signal immediately after the pixel value is decoded and reproduced.
Therefore, the prediction signal of the spatial region is required to be generated simply with high accuracy. Furthermore, a speedily operable construction is required in a coding apparatus and a decoding apparatus.
The coding of image data has been widely used in many international standards such as JPEG, MPEG1, H.261, MPEG2 and H.263. Each of the latter standards has a more improved coding efficiency. That is, much efforts have been devoted to further reducing the number of bits than in the conventional standards in expressing the same image quality.
Coding of image data of a dynamic image is comprised of intra-frame coding and prediction frame coding. Among these, the intra-frame coding refers to coding inside the screen of one frame. In a representative hybrid coding system such as MPEG1 Standard, consecutive frames can be classified into the following three different types:
(a) intra-frame (referred to as an "I-frame" hereinafter); PA1 (b) prediction frame (referred to as a "P-frame" hereinafter); and PA1 dividing means for dividing inputted image data to be coded into image data of a plurality of small regions which are adjacent to one another; PA1 first generating means operating, when coding the image data of an objective small region to be processed among the image data of the plurality of small regions which are divided by said dividing means and adjacent to one another, to use image data of a reproduced reproduction small region adjacent to the image data of said objective small region to be processed as image data of an intra-frame prediction small region of the objective small region to be processed, to use the image data of said intra-frame prediction small region as image data of an optimum prediction small region and to generate image data of a difference small region which are differences between the image data of said objective small region to be processed and the image data of said optimum prediction small region; PA1 coding means for coding the image data of the difference small region generated by said generating means; PA1 decoding means for decoding the image data of the difference small region coded by said coding means; and PA1 second generating means for generating image data of a reproduced reproduction small region by adding the image data of the difference small region decoded by said decoding means to the image data of said optimum prediction small region. PA1 dividing means for dividing inputted image data to be coded into image data of a plurality of small regions which are adjacent to one another; PA1 first generating means operating, when coding an objective small region to be processed among a plurality of small regions which are divided by said dividing means and adjacent to one another, to use only significant image data indicated by an inputted significance signal representing whether or not said coded image data is significant as image data of an intra-frame prediction small region of said objective small region to be processed among image data of a reproduced reproduction small region adjacent to the image data of said objective small region to be processed, to use the image data of said intra-frame prediction small region as image data of an optimum prediction small region and to generate image data of a difference small region which are differences between the image data of said objective small region to be processed and the image data of said optimum prediction small region; PA1 coding means for coding the image data of the difference small region generated by said first generating means; PA1 decoding means for decoding the image data of the difference small region coded by said coding means; and PA1 second generating means for generating image data of a reproduced reproduction small region by adding the image data of the difference small region decoded by said decoding means to the image data of said optimum prediction small region. PA1 analyzing means for analyzing an inputted coded image data series and outputting an image difference signal; PA1 decoding means for decoding image data of a reproduction difference small region from the image difference signal outputted from said analyzing means; PA1 a line memory for storing therein image data for generating image data of a predetermined intra-frame prediction small region; PA1 generating means for executing a prediction signal generating process on the image data from said line memory to thereby use reconstructed image data adjacent to the image data of said reproduction difference small region as image data of an intra-frame prediction small region and outputting the image data of said intra-frame prediction small region as image data of an optimum prediction small region; and PA1 adding means for adding the image data of the reproduction difference small region from said decoding means to the image data of said optimum prediction small region from said generating means, outputting image data for generating image data of an intra-frame prediction small region of the result of addition and storing the data into said line memory. PA1 analyzing means for analyzing an inputted coded image data series and outputting an image difference signal, a motion vector signal and a control signal; PA1 decoding means for decoding the image difference signal outputted from said analyzing means into image data of a reproduction difference small region; PA1 control means for outputting a switching signal for controlling motion compensating means and generating means to selectively operate based on the control signal outputted from said analyzing means; PA1 a frame memory for storing therein predetermined reproduction image data; PA1 a line memory for storing therein image data for generating image data of a predetermined intra-frame prediction small region; PA1 motion compensating means for executing a motion compensating process on an inputted motion vector signal in response to the switching signal from said control means to thereby generate image data of a time prediction small region from said frame memory and outputting the data as image data of an optimum prediction small region; PA1 generating means for executing a prediction signal generating process on the image data from said line memory in response to the switching signal from said control means to thereby use reconstructed image data adjacent to the image data of said reproduction difference small region as image data of an intra-frame prediction small region and outputting the image data of said intra-frame prediction small region as image data of an optimum prediction small region; and PA1 adding means for adding the image data of the reproduction difference small region from said decoding means to the image data of the optimum prediction small region from said generating means to thereby output reproduction image data of the result of addition, storing said reproduction image data into said frame memory and storing only the image data for generating the image data of said intra-frame prediction small region into said line memory. PA1 analyzing means for analyzing an inputted coded image data series and outputting a compressed shape signal and an image difference signal; PA1 first decoding means for decoding the compressed shape signal outputted from said analyzing means into a reproduction shape signal; PA1 second decoding means for decoding the image difference signal outputted from said analyzing means into image data of a reproduction difference small region; PA1 a line memory for storing therein image data for generating image data of a predetermined intra-frame prediction small region; PA1 generating means for executing a prediction signal process on the image data from said line memory to thereby use only significant image data expressed by said reproduction shape signal as image data of an intra-frame prediction small region among the reconstructed image data adjacent to the image data of said reproduction difference small region and outputting the image data of said intra- frame prediction small region as image data of an optimum prediction small region; and PA1 adding means for adding the image data of the reproduction difference small region from said second decoding means to the image data of said optimum prediction small region from said generating means to thereby output image data of the result of addition and storing only image data for generating the image data of said intra-frame prediction small region into said line memory. PA1 analyzing means for analyzing an inputted coded image data series and outputting a compressed shape signal, an image difference signal, a motion vector signal and a control signal; PA1 first decoding means for decoding the compressed shape signal outputted from said analyzing means into a reproduction shape signal; PA1 second decoding means for decoding the image difference signal outputted from said analyzing means into image data of a reproduction difference small region; PA1 control means for outputting a switching signal for controlling motion compensating means and generating means to selectively operate based on the control signal outputted from said analyzing means; PA1 a frame memory for storing therein predetermined reproduction image data; PA1 a line memory for storing therein image data for generating image data of a predetermined intra-frame prediction small region; PA1 motion compensating means for executing a motion compensating process on the reproduction image data from said frame memory based on the motion vector signal outputted from said analyzing means in response to the switching signal outputted from said control means to thereby generate image data of a time prediction small region and outputting the data as image data of an optimum prediction small region; PA1 generating means for executing a prediction signal process on the image data from said line memory in response to the switching signal outputted from said control means to thereby use only significant image data expressed by said reproduction shape signal among the reconstructed image data adjacent to the image data of said reproduction difference small region as the image data of the intra-frame prediction small region and outputting the image data of said intra-frame prediction small region as image data of an optimum prediction small region; and PA1 adding means for adding the image data of the reproduction difference small region from said second decoding means to the image data of said optimum prediction small region from said generating means to thereby output reproduction image data of the result of addition, storing said reproduction image data into said frame memory and storing only image data for generating the image data of said intra-frame prediction small region into said line memory. PA1 sampling means for sampling an inputted image signal into image data of a plurality of blocks each including pixel values of a two-dimensional array; PA1 transforming means for transforming the image data of the blocks sampled by said sampling means into coefficient data of a predetermined transform domain; PA1 a block memory for storing therein coefficient data of a restored block; PA1 predicting means for forming coefficient data of a plurality of prediction blocks for the coefficient data of the block transformed by said transforming means based on the coefficient data of a block which has been previously reconstructed and stored in said block memory; PA1 determining means for determining, selecting and outputting the coefficient data of a most efficient prediction block among the coefficient data of the plurality of prediction blocks formed by said predicting means and transmitting an identifier indicating said selected prediction block in an indication bit form to an image predictive decoding apparatus; PA1 first adding means for subtracting the coefficient data of the prediction block selected by said determining means from the coefficient data of the current block at the present timing, thereby outputting coefficient data of a prediction error of the result of subtraction; PA1 quantizing means for quantizing the coefficient data of the prediction error outputted from said first adding means; PA1 coding means for coding in an entropy coding manner the coefficient data of the prediction error from said quantizing means and transmitting the coded coefficient data of the prediction error to the image predictive decoding apparatus; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error from said quantizing means and outputting the coefficient data of the restored block; PA1 second adding means for adding the coefficient data of the prediction block outputted from said determining means to the coefficient data of the prediction error outputted from said inverse quantizing means to thereby output coefficient data of the restored block and storing the data into said block memory; and PA1 inverse transforming means for inverse transforming the coefficient data of the block outputted from said second adding means, thereby generating image data of the restored block. PA1 sampling means for sampling an inputted image signal into image data of a plurality of blocks each including pixel values of a two-dimensional array; PA1 transforming means for transforming the image data of the plurality of blocks sampled by said sampling means into coefficient data of a predetermined transform domain; PA1 quantizing means for quantizing the coefficient data of the transform domain from said transforming means; PA1 a block memory for storing therein coefficient data of a restored block; PA1 predicting means for forming coefficient data of a plurality of prediction blocks for the coefficient data of the block transformed by said transforming means based on the coefficient data of a block which has been previously reconstructed and stored in said block memory; PA1 determining means for determining, selecting and outputting the coefficient data of a most efficient prediction block among the coefficient data of the plurality of prediction blocks formed by said predicting means and transmitting an identifier indicating said selected prediction block in an indication bit form to an image predictive decoding apparatus; PA1 first adding means for subtracting the coefficient data of the prediction block selected by said determining means from the coefficient data of the current block at the present timing, thereby outputting coefficient data of a prediction error of the result of subtraction; PA1 coding means for coding in an entropy coding manner the coefficient data of the prediction error from said first adding means and transmitting the coded coefficient data of the prediction error to the image predictive decoding apparatus; PA1 second adding means for adding the coefficient data of the prediction error from said first adding means to the coefficient data of the prediction block outputted from said determining means to thereby restore and output the quantized coefficient data of the current block and storing the data into said block memory; PA1 inverse quantizing means for inverse quantizing the coefficient data of the current block outputted from said second adding means and outputting the resulting data; and PA1 inverse transforming means for inverse transforming the coefficient data of the current block from said inverse quantizing means, thereby generating image data of the restored block. PA1 sampling means for sampling an inputted image signal into image data of a plurality of blocks each including pixel values of a two-dimensional array; PA1 compensating means for executing a motion compensating process on the image data of an inputted block, thereby generating and outputting image data of a prediction error of a motion-compensated block; PA1 first adding means for subtracting the image data of the prediction error of the block outputted from said compensating means from the image data of the block outputted from said sampling means, thereby outputting image data of the block of the result of subtraction; PA1 transforming means for transforming the image data of the block outputted from said first adding means into coefficient data of a predetermined transform domain; PA1 a block memory for storing therein coefficient data of a restored block; PA1 predicting means for forming coefficient data of a plurality of prediction blocks for the coefficient data of the block transformed by said transforming means based on the coefficient data of the block which has been previously reconstructed and stored in said block memory; PA1 determining means for determining, selecting and outputting the coefficient data of a most efficient prediction block among the coefficient data of the plurality of prediction blocks formed by said predicting means and transmitting an identifier indicating said selected prediction block in an indication bit form to an image predictive decoding apparatus; PA1 second adding means for subtracting the coefficient data of the prediction block selected by said determining means from the coefficient data of the current block at the present timing, thereby outputting coefficient data of the prediction error of the result of subtraction; PA1 quantizing means for quantizing the coefficient data of the prediction error outputted from said second adding means; PA1 coding means for coding in an entropy coding manner the coefficient data of the prediction error from said quantizing means and transmitting the coded coefficient data of the prediction error to the image predictive decoding apparatus; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error from said quantizing means and outputting the coefficient data of the restored block; PA1 third adding means for adding the coefficient data of the prediction block outputted from said determining means to the coefficient data of the prediction error outputted from said inverse quantizing means to thereby output the coefficient data of the restored block and storing the data into said block memory; PA1 inverse transforming means for inverse transforming the coefficient data of the block outputted from said third adding means, thereby generating image data of the restored block; and PA1 fourth adding means for adding the image data of the prediction error of the motion-compensated block outputted from said motion compensating means to the image data of the restored block from said inverse transforming means, thereby outputting the image data of the restored block to said compensating means. PA1 sampling means for sampling an inputted image signal into image data of a plurality of blocks each including pixel values of a two-dimensional array; PA1 compensating means for executing a motion compensating process on the image data of an inputted block, thereby generating and outputting image data of a prediction error of a motion-compensated block; PA1 first adding means for subtracting the image data of the prediction error of the block outputted from said compensating means from the image data of the block outputted from said sampling means, thereby outputting image data of the block of the result of subtraction; PA1 transforming means for transforming the image data of the block outputted from said first adding means into coefficient data of a predetermined transform domain; PA1 quantizing means for quantizing the coefficient data of the transform domain from said transforming means; PA1 a block memory for storing therein coefficient data of a restored block; PA1 predicting means for forming coefficient data of a plurality of prediction blocks for the coefficient data of the block transformed by said transforming means based on the coefficient data of the block which has been previously reconstructed and stored in said block memory; PA1 determining means for determining, selecting and outputting the coefficient data of a most efficient prediction block among the coefficient data of the plurality of prediction blocks formed by said predicting means and transmitting an identifier indicating said selected prediction block in an indication bit form to an image predictive decoding apparatus; PA1 second adding means for subtracting the coefficient data of the prediction block selected by said determining means from the coefficient data of the current block at the present timing, thereby outputting coefficient data of the prediction error of the result of subtraction; PA1 coding means for coding in an entropy coding manner the coefficient data of the prediction error from said second adding means and transmitting the coded coefficient data of the prediction error to the image predictive decoding apparatus; PA1 third adding means for adding the coefficient data of the prediction error from said second adding means to the coefficient data of the prediction block outputted from said determining means to thereby restore and output the coefficient data of the quantized current block and storing the data into said block memory; PA1 inverse quantizing means for inverse quantizing the coefficient data of the current block outputted from said third adding means and outputting the resulting data; PA1 inverse transforming means for inverse transforming the coefficient data of the current block from said inverse quantizing means, thereby generating image data of the restored block; and PA1 fourth adding means for adding the image data of the prediction error of the motion-compensated block outputted from said motion compensating means to the image data of the restored block from said inverse transforming means, thereby outputting the image data of the restored block to said compensating means. PA1 extracting means for extracting the indication bit from received data received from said image predictive coding apparatus; PA1 a block memory for storing therein coefficient data of the restored block; PA1 further predicting means for generating and outputting coefficient data of a prediction block for the coefficient data of the current block at the present timing included in said received data by means of the coefficient data of the block which has been previously restored and stored in said block memory based on the prediction block indicated by the indication bit extracted by said extracting means; PA1 decoding means for decoding said received data in an entropy decoding manner and outputting the decoded coefficient data of the prediction error; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error outputted from said decoding means and outputting the resulting data; PA1 third adding means for adding the coefficient data of the prediction block outputted from said further predicting means to the coefficient data of the prediction error outputted from said inverse quantizing means to thereby restore and output the coefficient data of the current block at the present timing and storing the data into said block memory; and PA1 further inverse transforming means for inverse transforming the coefficient data of the current block outputted from said third adding means and outputting the image data of the restored current block. PA1 extracting means for extracting the indication bit from received data received from said image predictive coding apparatus; PA1 a block memory for storing therein coefficient data of the restored block; PA1 further predicting means for generating and outputting coefficient data of a prediction block for the coefficient data of the current block at the present timing included in said received data by means of the coefficient data of the block which has been previously restored and stored in said block memory based on the prediction block indicated by the indication bit extracted by said extracting means; PA1 decoding means for decoding said received data in an entropy decoding manner and outputting the decoded coefficient data of the prediction error; PA1 third adding means for adding the coefficient data of the prediction block outputted from said predicting means to the coefficient data of the prediction error outputted from said decoding means to thereby restore and output the coefficient data of the current block at the present timing and storing the data into said block memory; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error outputted from said third adding means and outputting the resulting data; and PA1 further inverse transforming means for inverse transforming the coefficient data of the current block outputted from said inverse quantizing means and outputting the image data of the restored current block. PA1 extracting means for extracting the indication bit from received data received from said image predictive coding apparatus; PA1 a block memory for storing therein coefficient data of the restored block; PA1 further predicting means for generating and outputting coefficient data of a prediction block for the coefficient data of the current block at the present timing included in said received data by means of the coefficient data of the block which has been previously restored and stored in said block memory based on the prediction block indicated by the indication bit extracted by said extracting means; PA1 decoding means for decoding said received data in an entropy decoding manner and outputting the decoded coefficient data of the prediction error; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error outputted from said decoding means and outputting the resulting data; PA1 third adding means for adding the coefficient data of the prediction block outputted from said further predicting means to the coefficient data of the prediction error outputted from said inverse quantizing means to thereby restore and output the coefficient data of the current block at the present timing and storing the data into said block memory; PA1 further inverse transforming means for inverse transforming the coefficient data of the current block outputted from said third adding means and outputting the image data of the restored current block; PA1 further compensating means for executing a motion compensating process on the image data of the current block outputted from said further inverse transforming means, thereby outputting motion-compensated prediction error data; and PA1 fifth adding means for subtracting the motion- compensated prediction error data outputted from said further compensating means from the image data of the current block outputted from said further inverse transforming means, thereby outputting the image data of the restored block of the result of subtraction. PA1 extracting means for extracting the indication bit from received data received from said image predictive coding apparatus; PA1 a block memory for storing therein coefficient data of the restored block; PA1 further predicting means for generating and outputting coefficient data of a prediction block for the coefficient data of the current block at the present timing included in said received data by means of the coefficient data of the block which has been previously restored and stored in said block memory based on the prediction block indicated by the indication bit extracted by said extracting means; PA1 decoding means for decoding said received data in an entropy decoding manner and outputting the decoded coefficient data of the prediction error; PA1 third adding means for adding the coefficient data of the prediction block outputted from said predicting means to the coefficient data of the prediction error outputted from said decoding means to thereby restore and output the coefficient data of the current block at the present timing and storing the data into said block memory; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error outputted from said third adding means and outputting the resulting data; PA1 further inverse transforming means for inverse transforming the coefficient data of the current block outputted from said inverse quantizing means and outputting the image data of the restored current block; PA1 further compensating means for executing a motion compensating process on the image data of the current block outputted from said further inverse transforming means, thereby outputting motion-compensated prediction error data; and PA1 fifth adding means for subtracting the motion-compensated prediction error data outputted from said further compensating means from the image data of the current block outputted from said further inverse transforming means, thereby outputting the image data of the restored block of the result of subtraction. PA1 sampling means for sampling an inputted image signal into image data of a plurality of blocks each including pixel values of a two-dimensional array; PA1 transforming means for transforming the image data of the blocks sampled by said sampling means into coefficient data of a predetermined transform domain; PA1 a block memory for storing therein coefficient data of a restored block; PA1 predicting means for forming coefficient data of a plurality of prediction blocks for the coefficient data of the block transformed by said transforming means based on the coefficient data of a block which has been previously reconstructed and stored in said block memory; PA1 determining means for determining, selecting and outputting the coefficient data and scan method of a most efficient prediction block among the coefficient data of the plurality of prediction blocks formed by said predicting means and transmitting an identifier indicating said selected prediction block and scan method in an indication bit form to an image predictive decoding apparatus; PA1 first adding means for subtracting the coefficient data of the prediction block selected by said determining means from the coefficient data of the current block at the present timing, thereby outputting coefficient data of a prediction error of the result of subtraction; PA1 quantizing means for quantizing the coefficient data of the prediction error outputted from said first adding means; PA1 scanning means for executing a scan process on the coefficient data of the prediction error from said quantizing means according to the scan method determined by said determining means and outputting the coefficient data of the prediction error obtained after the scan process; PA1 coding means for coding in an entropy coding manner the coefficient data of the prediction error obtained after the scan process outputted from said scanning means and transmitting the coded coefficient data of the prediction error to the image predictive decoding apparatus; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error from said quantizing means and outputting the coefficient data of the restored block; PA1 second adding means for adding the coefficient data of the prediction block outputted from said determining means to the coefficient data of the prediction error outputted from said inverse quantizing means to thereby output coefficient data of the restored block and storing the data into said block memory; and PA1 inverse transforming means for inverse transforming the coefficient data of the block outputted from said second adding means, thereby generating image data of the restored block. PA1 sampling means for sampling an inputted image signal into image data of a plurality of blocks each including pixel values of a two-dimensional array; PA1 transforming means for transforming the image data of the plurality of blocks sampled by said sampling means into coefficient data of a predetermined transform domain; PA1 quantizing means for quantizing the coefficient data of the transform domain from said transforming means; PA1 a block memory for storing therein coefficient data of a restored block; PA1 predicting means for forming coefficient data of a plurality of prediction blocks for the coefficient data of the block transformed by said transforming means based on the coefficient data of a block which has been previously reconstructed and stored in said block memory; PA1 determining means for determining, selecting and outputting the coefficient data and scan method of a most efficient prediction block among the coefficient data of the plurality of prediction blocks formed by said predicting means and transmitting an identifier indicating said selected prediction block and scan method in an indication bit form to an image predictive decoding apparatus; PA1 first adding means for subtracting the coefficient data of the prediction block selected by said determining means from the coefficient data of the current block at the present timing, thereby outputting coefficient data of a prediction error of the result of subtraction; PA1 scanning means for executing a scan process on the coefficient data of the prediction error from said first adding means according to the scan method determined by said determining means and outputting the coefficient data of the prediction error obtained after the scan process; PA1 coding means for coding in an entropy coding manner the coefficient data of the prediction error obtained after the scan process outputted from said scanning means and transmitting the coded coefficient data of the prediction error to the image predictive decoding apparatus; PA1 second adding means for adding the coefficient data of the prediction error from said first adding means to the coefficient data of the prediction block outputted from said determining means to thereby restore and output the quantized coefficient data of the current block and storing the data into said block memory; PA1 inverse quantizing means for inverse quantizing the coefficient data of the current block outputted from said second adding means and outputting the resulting data; and PA1 inverse transforming means for inverse transforming the coefficient data of the current block from said inverse quantizing means, thereby generating image data of the restored block. PA1 sampling means for sampling an inputted image signal into image data of a plurality of blocks each including pixel values of a two-dimensional array; PA1 compensating means for executing a motion compensating process on the image data of an inputted block, thereby generating and outputting image data of a prediction error of a motion-compensated block; PA1 first adding means for subtracting the image data of the prediction error of the block outputted from said compensating means from the image data of the block outputted from said sampling means, thereby outputting image data of the block of the result of subtraction; PA1 transforming means for transforming the image data of the block outputted from said first adding means into coefficient data of a predetermined transform domain; PA1 a block memory for storing therein coefficient data of a restored block; PA1 predicting means for forming coefficient data of a plurality of prediction blocks for the coefficient data of the block transformed by said transforming means based on the coefficient data of the block which has been previously reconstructed and stored in said block memory; PA1 determining means for determining, selecting and outputting the coefficient data and scan method of a most efficient prediction block among the coefficient data of the plurality of prediction blocks formed by said predicting means and transmitting an identifier indicating said selected prediction block and scan method in an indication bit form to an image predictive decoding apparatus; PA1 second adding means for subtracting the coefficient data of the prediction block selected by said determining means from the coefficient data of the current block at the present timing, thereby outputting coefficient data of the prediction error of the result of subtraction; PA1 quantizing means for quantizing the coefficient data of the prediction error outputted from said second adding means; PA1 scanning means for executing a scan process on the coefficient data of the prediction error from said quantizing means according to the scan method determined by said determining means and outputting the coefficient data of the prediction error obtained after the scan process; PA1 coding means for coding in an entropy coding manner the coefficient data of the prediction error obtained after the scan process outputted from said scanning means and transmitting the coded coefficient data of the prediction error to the image predictive decoding apparatus; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error from said quantizing means and outputting the coefficient data of the restored block; PA1 third adding means for adding the coefficient data of the prediction block outputted from said determining means to the coefficient data of the prediction error outputted from said inverse quantizing means to thereby output the coefficient data of the restored block and storing the data into said block memory; PA1 inverse transforming means for inverse transforming the coefficient data of the block outputted from said third adding means, thereby generating image data of the restored block; and PA1 fourth adding means for adding the image data of the prediction error of the motion-compensated block outputted from said motion compensating means to the image data of the restored block from said inverse transforming means, thereby outputting the image data of the restored block to said compensating means. PA1 sampling means for sampling an inputted image signal into image data of a plurality of blocks each including pixel values of a two-dimensional array; PA1 compensating means for executing a motion compensating process on the image data of an inputted block, thereby generating and outputting image data of a prediction error of a motion-compensated block; PA1 first adding means for subtracting the image data of the prediction error of the block outputted from said compensating means from the image data of the block outputted from said sampling means, thereby outputting image data of the block of the result of subtraction; PA1 transforming means for transforming the image data of the block outputted from said first adding means into coefficient data of a predetermined transform domain; PA1 quantizing means for quantizing the coefficient data of the transform domain from said transforming means; PA1 a block memory for storing therein coefficient data of a restored block; PA1 predicting means for forming coefficient data of a plurality of prediction blocks for the coefficient data of the block transformed by said transforming means based on the coefficient data of the block which has been previously reconstructed and stored in said block memory; PA1 determining means for determining, selecting and outputting the coefficient data and scan method of a most efficient prediction block among the coefficient data of the plurality of prediction blocks formed by said predicting means and transmitting an identifier indicating said selected prediction block and scan method in an indication bit form to an image predictive decoding apparatus; PA1 second adding means for subtracting the coefficient data of the prediction block selected by said determining means from the coefficient data of the current block at the present timing, thereby outputting coefficient data of the prediction error of the result of subtraction; PA1 scanning means for executing a scan process on the coefficient data of the prediction error from said second adding means according to the scan method determined by said determining means and outputting the coefficient data of the prediction error obtained after the scan process; PA1 coding means for coding in an entropy coding manner the coefficient data of the prediction error obtained after the scan process outputted from said scanning means and transmitting the coded coefficient data of the prediction error to the image predictive decoding apparatus; PA1 third adding means for adding the coefficient data of the prediction error from said second adding means to the coefficient data of the prediction block outputted from said determining means to thereby restore and output the coefficient data of the quantized current block and storing the data into said block memory; PA1 inverse quantizing means for inverse quantizing the coefficient data of the current block outputted from said third adding means and outputting the resulting data; PA1 inverse transforming means for inverse transforming the coefficient data of the current block from said inverse quantizing means, thereby generating image data of the restored block; and PA1 fourth adding means for adding the image data of the prediction error of the motion-compensated block outputted from said motion compensating means to the image data of the restored block from said inverse transforming means, thereby outputting the image data of the restored block to said compensating means. PA1 extracting means for extracting the indication bit from received data received from said image predictive coding apparatus; PA1 a block memory for storing therein coefficient data of the restored block; PA1 further predicting means for generating and outputting coefficient data of a prediction block for the coefficient data of the current block at the present timing included in said received data by means of the coefficient data of the block which has been previously restored and stored in said block memory based on the prediction block indicated by the indication bit extracted by said extracting means; PA1 decoding means for decoding said received data in an entropy decoding manner and outputting the decoded coefficient data of the prediction error; PA1 inverse scanning means for executing an inverse scan process on the coefficient data of the prediction error outputted from said decoding means based on the scan method indicated by the indication bit extracted by said extracting means and outputting the coefficient data of the prediction error obtained after the inverse scan process; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error obtained after the inverse scan process outputted from said scanning means and outputting the resulting data; PA1 third adding means for adding the coefficient data of the prediction block outputted from said further predicting means to the coefficient data of the prediction error outputted from said inverse quantizing means to thereby restore and output the coefficient data of the current block at the present timing and storing the data into said block memory; and PA1 further inverse transforming means for inverse transforming the coefficient data of the current block outputted from said third adding means and outputting the image data of the restored current block. PA1 extracting means for extracting the indication bit from received data received from said image predictive coding apparatus; PA1 a block memory for storing therein coefficient data of the restored block; PA1 further predicting means for generating and outputting coefficient data of a prediction block for the coefficient data of the current block at the present timing included in said received data by means of the coefficient data of the block which has been previously restored and stored in said block memory based on the prediction block indicated by the indication bit extracted by said extracting means; PA1 decoding means for decoding said received data in an entropy decoding manner and outputting the decoded coefficient data of the prediction error; PA1 inverse scanning means for executing an inverse scan process on the coefficient data of the prediction error outputted from said decoding means based on the scan method indicated by the indication bit extracted by said extracting means and outputting the coefficient data of the prediction error obtained after the inverse scan process; PA1 third adding means for adding the coefficient data of the prediction block outputted from said predicting means to the coefficient data of the prediction error outputted from said inverse scanning means to thereby restore and output the coefficient data of the current block at the present timing and storing the data into said block memory; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error outputted from said third adding means and outputting the resulting data; and PA1 further inverse transforming means for inverse transforming the coefficient data of the current block outputted from said inverse quantizing means and outputting the image data of the restored current block. PA1 extracting means for extracting the indication bit from received data received from said image predictive coding apparatus; PA1 a block memory for storing therein coefficient data of the restored block; PA1 further predicting means for generating and outputting coefficient data of a prediction block for the coefficient data of the current block at the present timing included in said received data by means of the coefficient data of the block which has been previously restored and stored in said block memory based on the prediction block indicated by the indication bit extracted by said extracting means; PA1 decoding means for decoding said received data in an entropy decoding manner and outputting the decoded coefficient data of the prediction error; PA1 inverse scanning means for executing an inverse scan process on the coefficient data of the prediction error outputted from said decoding means based on the scan method indicated by the indication bit extracted by said extracting means and outputting the coefficient data of the prediction error obtained after the inverse scan process; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error obtained after the inverse scan process outputted from said inverse scanning means and outputting the resulting data; PA1 third adding means for adding the coefficient data of the prediction block outputted from said further predicting means to the coefficient data of the prediction error outputted from said inverse quantizing means to thereby restore and output the coefficient data of the current block at the present timing and storing the data into said block memory; PA1 further inverse transforming means for inverse transforming the coefficient data of the current block outputted from said third adding means and outputting the image data of the restored current block; PA1 further compensating means for executing a motion compensating process on the image data of the current block outputted from said further inverse transforming means, thereby outputting motion-compensated prediction error data; and PA1 fifth adding means for subtracting the motion-compensated prediction error data outputted from said further compensating means from the image data of the current block outputted from said further inverse transforming means, thereby outputting the image data of the restored block of the result of subtraction. PA1 extracting means for extracting the indication bit from received data received from said image predictive coding apparatus; PA1 a block memory for storing therein coefficient data of the restored block; PA1 further predicting means for generating and outputting coefficient data of a prediction block for the coefficient data of the current block at the present timing included in said received data by means of the coefficient data of the block which has been previously restored and stored in said block memory based on the prediction block indicated by the indication bit extracted by said extracting means; PA1 decoding means for decoding said received data in an entropy decoding manner and outputting the decoded coefficient data of the prediction error; PA1 inverse scanning means for executing an inverse scan process on the coefficient data of the prediction error outputted from said decoding means based on the scan method indicated by the indication bit extracted by said extracting means and outputting the coefficient data of the prediction error obtained after the inverse scan process; PA1 third adding means for adding the coefficient data of the prediction block outputted from said predicting means to the coefficient data of the prediction error outputted from said inverse scanning means to thereby restore and output the coefficient data of the current block at the present timing and storing the data into said block memory; PA1 inverse quantizing means for inverse quantizing the coefficient data of the prediction error outputted from said third adding means and outputting the resulting data; PA1 further inverse transforming means for inverse transforming the coefficient data of the current block outputted from said inverse quantizing means and outputting the image data of the restored current block; PA1 further compensating means for executing a motion compensating process on the image data of the current block outputted from said further inverse transforming means, thereby outputting motion-compensated prediction error data; and PA1 fifth adding means for subtracting the motion-compensated prediction error data outputted from said further compensating means from the image data of the current block outputted from said further inverse transforming means, thereby outputting the image data of the restored block of the result of subtraction.
1(c) bidirectional prediction frame (referred to as a "B-frame" hereinafter).
The I-frame is coded independently of the other frames, i.e., the I-frame is compressed without using the other frames. The P-frame is coded through motion 2() detection and compensation by using the immediately preceding frame for the purpose of predicting the contents of a coded frame (it is a P-frame). The B-frame is coded through motion detection and compensation by using information from the immediately preceding frame and information from the subsequent frame for predicting the data of the contents of the B-frame. The preceding frame and the subsequent frame is the I-frame or the P-frame. The I-frame belongs to an intra-code mode. The P-frame and the B-frame belong to a prediction code mode.
As the characteristics of the coding of the I-frame, P-frame and B-frame are different from one another, the compressing methods thereof differ from one another. The I-frame uses no temporary prediction for the purpose of reducing the redundancy, and therefore, it requires more bits than those of the P-frame and the B-frame.
A description will be herein made taking MPEG2 as an example. It is assumed that the bit rate is 4 Mbits/sec and an image having 30 frames/sec is used. In general, the ratio of the number of bits used for the I- P- and B-frames is 6: 3:1. Therefore, the I-frame uses about 420 kbits/s, and the B-frame uses about 70 kbits/s. This is because the B-frame is sufficiently predicted from both directions.
FIG. 14 is a block diagram showing a construction of a prior art image predictive coding apparatus. Since a DCT transform is executed on a block basis, the recent image coding methods are all based on the division of an image into smaller blocks. According to the intra-frame coding, an inputted digital image signal is first of all subjected to a block sampling process 1001 as shown in FIG. 14. Next, the blocks obtained after the block sampling process 1001 are subjected to a DCT transform process 1004 and thereafter subjected to a quantizing process 1005 and a run length Huffman variable length coding (VLC: Variable Length Coding; entropy coding) process 1006. On the other hand, according to the prediction frame coding, an inputted digital image is subjected to a motion compensating process 1003, and the motion-compensated block (i.e., the predicted block) is subjected to the DCT transform process 1004. Next, the quantizing process 1005 and the run length Huffman VLC coding (entropy coding) process 1006 are executed.
The fact that the block-based DCT transform process 1004 removes or reduces a spatial redundancy inside the target block to be processed and the fact that the motion detecting and compensating processes 1002 and 1003 remove or reduce a temporary redundancy between adjacent frames are known from the conventional image coding techniques. Further, the run length Huffman VLC coding or another entropy coding process 1006 executed after the DCT transform process 1004 and the quantizing process 1005 removes a statistical redundancy between quantized DCT transform coefficients. However, the process is executed only on the blocks inside a screen frame.
A digital image has a spatially great redundancy as an inherent characteristic. This redundancy exists not only in the blocks inside a screen frame but also between blocks over blocks. However, the fact that no actual method uses a process for removing the redundancy between blocks of an image is apparent from the above description.
According to the existing image coding method, the DCT transform process 1004 or another transform process is executed on the block basis due to restrictive conditions in terms of hardware formation and calculation. Although the spatial redundancy is reduced through the block-based transform process, it is restricted to the inside of one block. The redundancy between adjacent two blocks is not satisfactorily considered, however, it can be further reduced when the intra-frame coding which consistently consumes a great number of bits is used.
Furthermore, the fact that the block-based DCT transform process removes or reduces the spatial redundancy inside the target block to be processed and the fact that the motion predicting and compensating processes remove or reduce the temporary redundancy between adjacent two frames are known from the existing image coding techniques. A zigzag scan and the run length Huffman VLC coding or another entropy coding process, which are executed after the DCT transform process and the quantizing process, remove the statistical redundancy in quantized DCT transform coefficients, however, they are still restricted to the inside of one block.
A digital image inherently includes a great spatial redundancy. This redundancy exists not only inside a block but also between blocks over blocks of a screen frame. Therefore, as is apparent from the above facts, no existing method uses the process for removing the redundancy between blocks of one image at all except for the DC coefficient prediction of JPEG, MPEG1 and MPEG2.
According to MPEG1 and MPEG2, the DC coefficient prediction is executed by subtracting the DC value of the preceding coded block from the currently coded block. This is a simple predicting method which does not have an adaptiveness or mode switching when the prediction is inappropriate. Further, it merely includes DC coefficients.
According to the current state of the concerned technical field, the zigzag scan is used for all blocks prior to the run length coding. No attempt at making scan adaptive on the basis of the data of the contents of the block has been made.
FIG. 22 is a block diagram showing a construction of a prior art image predictive coding apparatus. In FIG. 22, the prior art image predictive coding apparatus is provided with a block sampling unit 2001, a DCT transform unit 2003, a quantizing unit 2004, a zigzag scan unit 2005 and an entropy coding unit 2006. In this specification, the term "unit" means a circuit device.
According to the intra-frame coding (i.e., coding inside a frame), an inputted image signal is subjected to a block sampling process 2001 and thereafter subjected directly to a DCT transform process 2003. Then, a quantizing process 2004, a zigzag scan process 2005 and an entropy coding process 2006 are sequentially executed. On the other hand, according to the inter-frame coding (i.e., coding between frames, i.e., prediction frame coding), a motion detecting and compensating process is executed in a unit 2011 after the block sampling process 2001, and then a prediction error is obtained from an adder 2002 by subtracting a detection value obtained from the unit 2011 from the image data obtained from the block sampling 2001. Further, this prediction error is subjected to the DCT transform process 2003 and then to the quantizing process 2004, zigzag scan process 2005 and entropy coding process 2006 similar to the intra-frame coding.
In a local decoder provided in the image predictive coding apparatus shown in FIG. 22, an inverse quantizing process and an inverse DCT transform process are executed in units 2007 and 2008. According to the intra-frame coding, a prediction value obtained through motion detection and compensation is added by an adder 2009 to the prediction error reconstructed by the units 2007 and 2008, and the addition value means locally decoded image data. The decoded image data is stored into a frame memory 2010 of the local decoder. Finally, a bit stream is outputted from the entropy coding unit 2010 and transmitted to the image predictive decoding apparatus of the other party.
FIG. 23 is a block diagram showing a construction of a prior art image predictive decoding apparatus. The bit stream is decoded by a variable length decoder (VLD: Variable Length Decoding) unit (or an entropy decoding unit) 2021, and the decoded image data is then subjected to an inverse quantizing process and an inverse DCT transform process in units 2023 and 2024. According to the inter-frame coding, a prediction value which is obtained through motion detection and compensation and formed by a unit 2027 is added by an adder 2025 to the prediction error reconstructed, thereby forming locally decoded image data. The locally decoded image data is stored into a frame memory 1026 of the local decoder.
According to the existing image coding techniques, the DCT transform process or other transform process is executed on the block basis due to the restrictive conditions in terms of hardware formation and calculation. The spatial redundancy will be reduced through the block-based transform. However, it is restricted to the inside of a block. The redundancy between adjacent blocks is not satisfactorily considered. In particular, the intra-frame coding which consistently consumes a great amount of bits is not satisfactorily considered.
A first object of the present invention is to provide an image predictive coding apparatus and method as well as image predictive decoding apparatus and method capable of simply generating prediction image data of the spatial region at high speed with high accuracy.
A second object of the present invention is to provide an image predictive coding apparatus and method as well as image predictive decoding apparatus and method capable of removing the redundancy in a block further than in the prior art image predictive coding apparatus and image predictive decoding apparatus and more efficiently coding or decoding image data.
Further, a third object of the present invention is to provide an image predictive coding apparatus and method as well as image predictive decoding apparatus and method capable of improving the efficiency of an entropy coding process by solving the problem that important transform coefficients are concentrated on different regions of a block depending on the internal properties of image data and by determining the correct scan method for the block.
Furthermore, a fourth object of the present invention is to provide a recording medium in which the steps of the image predictive coding method or the image predictive decoding method are recorded.